package cn.aitrox.ry.service.image.api;

import cn.aitrox.ry.bean.RespResult;
import cn.aitrox.ry.service.image.dto.image.transfer.in.ImageTransferExecuteInDto;
import cn.aitrox.ry.service.image.dto.image.transfer.in.ImageTransferPauseInDto;
import cn.aitrox.ry.service.image.dto.image.transfer.in.ImageTransferRestartInDto;
import cn.aitrox.ry.service.image.dto.image.transfer.in.ImageTransferResultExportInDto;
import cn.aitrox.ry.service.image.dto.image.transfer.in.ImageTransferResultQueryInDto;
import cn.aitrox.ry.service.image.dto.image.transfer.out.ImageTransferResultExportDataDto;
import cn.aitrox.ry.service.image.dto.image.transfer.out.ImageTransferResultQueryOutDto;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;

import java.util.List;

public interface ImageTransferApi {

    @RequestMapping("/image/transfer/result/query")
    ImageTransferResultQueryOutDto resultQuery(@RequestBody ImageTransferResultQueryInDto input);

    @RequestMapping("/image/transfer/execute")
    RespResult execute(@RequestBody ImageTransferExecuteInDto input);

    @RequestMapping("/image/transfer/restart")
    RespResult restart(@RequestBody ImageTransferRestartInDto input);

    @RequestMapping("/image/transfer/pause")
    RespResult pause(ImageTransferPauseInDto input);

    @RequestMapping("/image/transfer/result/export")
    List<ImageTransferResultExportDataDto> resultExport(@RequestBody ImageTransferResultExportInDto input);
}
